home *** CD-ROM | disk | FTP | other *** search
/ Chip 2003 - Homepage / CHIP.BIN / share / webmaste / csehtmlp / csehtmlp.exe / {app} / ParserRules / cobol.xs < prev    next >
Encoding:
Text File  |  2002-04-22  |  12.9 KB  |  388 lines

  1. //Language: Cobol
  2. //Copyright (c) 1992-2002 Altium Limited             
  3. //All rights reserved.                               
  4. //http://www.dream-com.com                           
  5. //contact@dream-com.com                              
  6.  
  7. State=snormal
  8. State=scomment
  9. // tokens
  10. Token=tNone
  11. Token=tstring
  12. Token=tcomment
  13. Token=tident
  14. Token=tinteger
  15. Token=tlevelinteger
  16. Token=tfloat
  17. Token=tresword
  18. Token=twhitespace
  19. // reswords
  20. snormal 'ACCEPT' snormal tresword
  21. snormal 'ACCESS' snormal tresword
  22. snormal 'ADD' snormal tresword
  23. snormal 'ADDRESS' snormal tresword
  24. snormal 'ADVANCING' snormal tresword
  25. snormal 'AFTER' snormal tresword
  26. snormal 'ALL' snormal tresword
  27. snormal 'ALPHABET' snormal tresword
  28. snormal 'ALSO' snormal tresword
  29. snormal 'ALTER' snormal tresword
  30. snormal 'ALTERNATE' snormal tresword
  31. snormal 'AND' snormal tresword
  32. snormal 'ANY' snormal tresword
  33. snormal 'APPLY' snormal tresword
  34. snormal 'ARE' snormal tresword
  35. snormal 'AREA' snormal tresword
  36. snormal 'AREAS' snormal tresword
  37. snormal 'ASCENDING' snormal tresword
  38. snormal 'ASSIGN' snormal tresword
  39. snormal 'AT' snormal tresword
  40. snormal 'BASIS' snormal tresword
  41. snormal 'BEFORE' snormal tresword
  42. snormal 'BEGINNING' snormal tresword
  43. snormal 'BINARY' snormal tresword
  44. snormal 'BLANK' snormal tresword
  45. snormal 'BLOCK' snormal tresword
  46. snormal 'BOTTOM' snormal tresword
  47. snormal 'BY' snormal tresword
  48. snormal 'CALL' snormal tresword
  49. snormal 'CANCEL' snormal tresword
  50. snormal 'CBL' snormal tresword
  51. snormal 'CHARACTER' snormal tresword
  52. snormal 'CHARACTERS' snormal tresword
  53. snormal 'CLASS' snormal tresword
  54. snormal 'CLOSE' snormal tresword
  55. snormal 'COLLATING' snormal tresword
  56. snormal 'COMMA' snormal tresword
  57. snormal 'COMMON' snormal tresword
  58. snormal 'COMPUTE' snormal tresword
  59. snormal 'CONFIGURATION' snormal tresword
  60. snormal 'CONTAINS' snormal tresword
  61. snormal 'CONTENT' snormal tresword
  62. snormal 'CONTINUE' snormal tresword
  63. snormal 'CONVERTING' snormal tresword
  64. snormal 'COPY' snormal tresword
  65. snormal 'CORR' snormal tresword
  66. snormal 'CORRESPONDING' snormal tresword
  67. snormal 'COUNT' snormal tresword
  68. snormal 'CURRENCY' snormal tresword
  69. snormal 'DATA' snormal tresword
  70. snormal 'DAY' snormal tresword
  71. snormal 'DBCS' snormal tresword
  72. snormal 'DEBUGGING' snormal tresword
  73. snormal 'DECLARATIVES' snormal tresword
  74. snormal 'DEGUGGING' snormal tresword
  75. snormal 'DELETE' snormal tresword
  76. snormal 'DELIMITED' snormal tresword
  77. snormal 'DELIMITER' snormal tresword
  78. snormal 'DEPENDING' snormal tresword
  79. snormal 'DESCENDING' snormal tresword
  80. snormal 'DIVIDE' snormal tresword
  81. snormal 'DIVISION' snormal tresword
  82. snormal 'DOWN' snormal tresword
  83. snormal 'DUPLICATES' snormal tresword
  84. snormal 'DYNAMIC' snormal tresword
  85. snormal 'EBCDIC' snormal tresword
  86. snormal 'EGCS' snormal tresword
  87. snormal 'EJECT' snormal tresword
  88. snormal 'ELSE' snormal tresword
  89. snormal 'ENDING' snormal tresword
  90. snormal 'ENTER' snormal tresword
  91. snormal 'ENTRY' snormal tresword
  92. snormal 'ENVIRONMENT' snormal tresword
  93. snormal 'EOP' snormal tresword
  94. snormal 'EQUAL' snormal tresword
  95. snormal 'ERROR' snormal tresword
  96. snormal 'EVALUATE' snormal tresword
  97. snormal 'EVERY' snormal tresword
  98. snormal 'EXCEPTION' snormal tresword
  99. snormal 'EXIT' snormal tresword
  100. snormal 'EXTEND' snormal tresword
  101. snormal 'EXTERNAL' snormal tresword
  102. snormal 'F' snormal tresword
  103. snormal 'FALSE' snormal tresword
  104. snormal 'FD' snormal tresword
  105. snormal 'FILLER' snormal tresword
  106. snormal 'FIRST' snormal tresword
  107. snormal 'FOOTING' snormal tresword
  108. snormal 'FOR' snormal tresword
  109. snormal 'FROM' snormal tresword
  110. snormal 'GIVING' snormal tresword
  111. snormal 'GLOBAL' snormal tresword
  112. snormal 'GO' snormal tresword
  113. snormal 'GOBACK' snormal tresword
  114. snormal 'GREATER' snormal tresword
  115. snormal 'ID' snormal tresword
  116. snormal 'IDENTIFICATION' snormal tresword
  117. snormal 'IF' snormal tresword
  118. snormal 'IN' snormal tresword
  119. snormal 'INDEX' snormal tresword
  120. snormal 'INDEXED' snormal tresword
  121. snormal 'INITIAL' snormal tresword
  122. snormal 'INITIALIZE' snormal tresword
  123. snormal 'INSERT' snormal tresword
  124. snormal 'INSPECT' snormal tresword
  125. snormal 'INSTALLATION' snormal tresword
  126. snormal 'INTO' snormal tresword
  127. snormal 'INVALID' snormal tresword
  128. snormal 'IS' snormal tresword
  129. snormal 'JUST' snormal tresword
  130. snormal 'JUSTIFIED' snormal tresword
  131. snormal 'KANJI' snormal tresword
  132. snormal 'KEY' snormal tresword
  133. snormal 'LABEL' snormal tresword
  134. snormal 'LEADING' snormal tresword
  135. snormal 'LEFT' snormal tresword
  136. snormal 'LENGTH' snormal tresword
  137. snormal 'LESS' snormal tresword
  138. snormal 'LINE' snormal tresword
  139. snormal 'LINES' snormal tresword
  140. snormal 'LINKAGE' snormal tresword
  141. snormal 'LIST' snormal tresword
  142. snormal 'LOCK' snormal tresword
  143. snormal 'MAP' snormal tresword
  144. snormal 'MEMORY' snormal tresword
  145. snormal 'MERGE' snormal tresword
  146. snormal 'MODE' snormal tresword
  147. snormal 'MODULES' snormal tresword
  148. snormal 'MOVE' snormal tresword
  149. snormal 'MULTIPLE' snormal tresword
  150. snormal 'MULTIPLY' snormal tresword
  151. snormal 'NATIVE' snormal tresword
  152. snormal 'NEGATIVE' snormal tresword
  153. snormal 'NEXT' snormal tresword
  154. snormal 'NO' snormal tresword
  155. snormal 'NOLIST' snormal tresword
  156. snormal 'NOMAP' snormal tresword
  157. snormal 'NOSOURCE' snormal tresword
  158. snormal 'NOT' snormal tresword
  159. snormal 'NULL' snormal tresword
  160. snormal 'NULLS' snormal tresword
  161. snormal 'OCCURS' snormal tresword
  162. snormal 'OF' snormal tresword
  163. snormal 'OFF' snormal tresword
  164. snormal 'OMITTED' snormal tresword
  165. snormal 'ON' snormal tresword
  166. snormal 'OPEN' snormal tresword
  167. snormal 'OPTIONAL' snormal tresword
  168. snormal 'OR' snormal tresword
  169. snormal 'ORDER' snormal tresword
  170. snormal 'ORGANIZATION' snormal tresword
  171. snormal 'OTHER' snormal tresword
  172. snormal 'OUTPUT' snormal tresword
  173. snormal 'OVERFLOW' snormal tresword
  174. snormal 'PADDING' snormal tresword
  175. snormal 'PAGE' snormal tresword
  176. snormal 'PASSWORD' snormal tresword
  177. snormal 'PERFORM' snormal tresword
  178. snormal 'PIC' snormal tresword
  179. snormal 'PICTURE' snormal tresword
  180. snormal 'POINTER' snormal tresword
  181. snormal 'POSITION' snormal tresword
  182. snormal 'POSITIVE' snormal tresword
  183. snormal 'PROCEDURE' snormal tresword
  184. snormal 'PROCEDURES' snormal tresword
  185. snormal 'PROCEED' snormal tresword
  186. snormal 'PROCESS' snormal tresword
  187. snormal 'QUOTE' snormal tresword
  188. snormal 'QUOTES' snormal tresword
  189. snormal 'RANDOM' snormal tresword
  190. snormal 'READ' snormal tresword
  191. snormal 'READY' snormal tresword
  192. snormal 'RECORD' snormal tresword
  193. snormal 'RECORDING' snormal tresword
  194. snormal 'RECORDS' snormal tresword
  195. snormal 'REDEFINES' snormal tresword
  196. snormal 'REEL' snormal tresword
  197. snormal 'REFERENCE' snormal tresword
  198. snormal 'RELATIVE' snormal tresword
  199. snormal 'RELEASE' snormal tresword
  200. snormal 'RELOAD' snormal tresword
  201. snormal 'REMAINDER' snormal tresword
  202. snormal 'REMOVAL' snormal tresword
  203. snormal 'RENAMES' snormal tresword
  204. snormal 'REPLACE' snormal tresword
  205. snormal 'REPLACING' snormal tresword
  206. snormal 'RERUN' snormal tresword
  207. snormal 'RESERVE' snormal tresword
  208. snormal 'RESET' snormal tresword
  209. snormal 'REVERSED' snormal tresword
  210. snormal 'REWIND' snormal tresword
  211. snormal 'REWRITE' snormal tresword
  212. snormal 'RIGHT' snormal tresword
  213. snormal 'ROUNDED' snormal tresword
  214. snormal 'RUN' snormal tresword
  215. snormal 'S' snormal tresword
  216. snormal 'SAME' snormal tresword
  217. snormal 'SD' snormal tresword
  218. snormal 'SEARCH' snormal tresword
  219. snormal 'SECTION' snormal tresword
  220. snormal 'SELECT' snormal tresword
  221. snormal 'SENTENCE' snormal tresword
  222. snormal 'SEPARATE' snormal tresword
  223. snormal 'SEQUENCE' snormal tresword
  224. snormal 'SEQUENTIAL' snormal tresword
  225. snormal 'SERVICE' snormal tresword
  226. snormal 'SET' snormal tresword
  227. snormal 'SIGN' snormal tresword
  228. snormal 'SIZE' snormal tresword
  229. snormal 'SKIP1' snormal tresword
  230. snormal 'SKIP2' snormal tresword
  231. snormal 'SKIP3' snormal tresword
  232. snormal 'SPACE' snormal tresword
  233. snormal 'SPACES' snormal tresword
  234. snormal 'START' snormal tresword
  235. snormal 'STATUS' snormal tresword
  236. snormal 'STOP' snormal tresword
  237. snormal 'STRING' snormal tresword
  238. snormal 'SUBTRACT' snormal tresword
  239. snormal 'SUPPRESS' snormal tresword
  240. snormal 'SYMBOLIC' snormal tresword
  241. snormal 'SYNC' snormal tresword
  242. snormal 'SYNCHRONIZED' snormal tresword
  243. snormal 'TALLY' snormal tresword
  244. snormal 'TALLYING' snormal tresword
  245. snormal 'TAPE' snormal tresword
  246. snormal 'TEST' snormal tresword
  247. snormal 'THAN' snormal tresword
  248. snormal 'THEN' snormal tresword
  249. snormal 'THROUGH' snormal tresword
  250. snormal 'THRU' snormal tresword
  251. snormal 'TIME' snormal tresword
  252. snormal 'TIMES' snormal tresword
  253. snormal 'TITLE' snormal tresword
  254. snormal 'TO' snormal tresword
  255. snormal 'TOP' snormal tresword
  256. snormal 'TRACE' snormal tresword
  257. snormal 'TRAILING' snormal tresword
  258. snormal 'TRUE' snormal tresword
  259. snormal 'U' snormal tresword
  260. snormal 'UNIT' snormal tresword
  261. snormal 'UNSTRING' snormal tresword
  262. snormal 'UNTIL' snormal tresword
  263. snormal 'UP' snormal tresword
  264. snormal 'UPON' snormal tresword
  265. snormal 'USAGE' snormal tresword
  266. snormal 'USE' snormal tresword
  267. snormal 'USING' snormal tresword
  268. snormal 'V' snormal tresword
  269. snormal 'VALUE' snormal tresword
  270. snormal 'VALUES' snormal tresword
  271. snormal 'VARYING' snormal tresword
  272. snormal 'WITH' snormal tresword
  273. snormal 'WORDS' snormal tresword
  274. snormal 'ZERO' snormal tresword
  275. snormal 'ZEROES' snormal tresword
  276. snormal 'ZEROS' snormal tresword
  277.  
  278.  
  279. snormal ALPHABETIC snormal tresword
  280. snormal ALPHABETIC-LOWER snormal tresword
  281. snormal ALPHABETIC-UPPER snormal tresword
  282. snormal ALPHANUMERIC snormal tresword
  283. snormal ALPHANUMERIC-EDITED snormal tresword
  284. snormal CODE-SET snormal tresword
  285. snormal COMP snormal tresword
  286. snormal COMP-1 snormal tresword
  287. snormal COMP-2 snormal tresword
  288. snormal COMP-3 snormal tresword
  289. snormal COMP-4 snormal tresword
  290. snormal COMPUTATIONAL snormal tresword
  291. snormal COMPUTATIONAL-1 snormal tresword
  292. snormal COMPUTATIONAL-2 snormal tresword
  293. snormal COMPUTATIONAL-3 snormal tresword
  294. snormal COMPUTATIONAL-4 snormal tresword
  295. snormal DATE snormal tresword
  296. snormal DATE-COMPILED snormal tresword
  297. snormal DATE-WRITTEN snormal tresword
  298. snormal DAY-OF-WEEK snormal tresword
  299. snormal DEBUG-ITEM snormal tresword
  300. snormal DECIMAL-POINT snormal tresword
  301. snormal DISPLAY snormal tresword
  302. snormal DISPLAY-1 snormal tresword
  303. snormal END snormal tresword
  304. snormal END-ADD snormal tresword
  305. snormal END-CALL snormal tresword
  306. snormal END-COMPUTE snormal tresword
  307. snormal END-DELETE snormal tresword
  308. snormal END-DIVIDE snormal tresword
  309. snormal END-EVALUATE snormal tresword
  310. snormal END-IF snormal tresword
  311. snormal END-MULTIPLY snormal tresword
  312. snormal END-OF-PAGE snormal tresword
  313. snormal END-PERFORM snormal tresword
  314. snormal END-READ snormal tresword
  315. snormal END-RETURN snormal tresword
  316. snormal END-REWRITE snormal tresword
  317. snormal END-SEARCH snormal tresword
  318. snormal END-START snormal tresword
  319. snormal END-STRING snormal tresword
  320. snormal END-SUBTRACT snormal tresword
  321. snormal END-UNSTRING snormal tresword
  322. snormal END-WRITE snormal tresword
  323. snormal FILE snormal tresword
  324. snormal FILE-CONTROL snormal tresword
  325. snormal HIGH-VALUE snormal tresword
  326. snormal HIGH-VALUES snormal tresword
  327. snormal I-O snormal tresword
  328. snormal I-O-CONTROL snormal tresword
  329. snormal INPUT snormal tresword
  330. snormal INPUT-OUTPUT snormal tresword
  331. snormal LINAGE snormal tresword
  332. snormal LINAGE-COUNTER snormal tresword
  333. snormal LOW-VALUE snormal tresword
  334. snormal LOW-VALUES snormal tresword
  335. snormal MORE-LABELS snormal tresword
  336. snormal NUMERIC snormal tresword
  337. snormal NUMERIC-EDITED snormal tresword
  338. snormal OBJECT-COMPUTER snormal tresword
  339. snormal PACKED-DECIMAL snormal tresword
  340. snormal PROGRAM snormal tresword
  341. snormal PROGRAM-ID snormal tresword
  342. snormal RETURN snormal tresword
  343. snormal RETURN-CODE snormal tresword
  344. snormal SEGMENT-LIMIT snormal tresword
  345. snormal SHIFT-IN snormal tresword
  346. snormal SHIFT-OUT snormal tresword
  347. snormal SORT snormal tresword
  348. snormal SORT-CONTROL snormal tresword
  349. snormal SORT-CORE-SIZE snormal tresword
  350. snormal SORT-FILE-SIZE snormal tresword
  351. snormal SORT-MERGE snormal tresword
  352. snormal SORT-MESSAGE snormal tresword
  353. snormal SORT-MODE-SIZE snormal tresword
  354. snormal SORT-RETURN snormal tresword
  355. snormal SOURCE snormal tresword
  356. snormal SOURCE-COMPUTER snormal tresword
  357. snormal SPECIAL-NAMES snormal tresword
  358. snormal STANDARD snormal tresword
  359. snormal STANDARD-1 snormal tresword
  360. snormal STANDARD-2 snormal tresword
  361. snormal WHEN snormal tresword
  362. snormal WHEN-COMPILED snormal tresword
  363. snormal WORKING-STORAGE snormal tresword
  364. snormal WRITE snormal tresword
  365. snormal WRITE-ONLY snormal tresword
  366.  
  367. snormal AUTHOR snormal tresword
  368. snormal SECURITY snormal tresword
  369.  
  370. // numbers
  371. snormal [0-9][0-9]* snormal  tinteger
  372. snormal [x]"[0-9A-F]+" snormal  tinteger
  373. snormal [x]'[0-9A-F]+' snormal  tinteger
  374. snormal [0-9][0-9]*\.[0-9]* snormal  tfloat
  375.  
  376. //comments
  377. snormal   \* scomment tcomment
  378. scomment [#1-#255]* snormal   tcomment
  379. scomment $  snormal   tcomment
  380. snormal AUTHOR\. scomment tresword
  381. snormal INSTALLATION\. scomment tresword
  382. snormal DATE-WRITTEN\. scomment tresword
  383. snormal DATE-COMPILED\. scomment tresword
  384. snormal SECURITY\. scomment tresword
  385.  
  386.  
  387.  
  388.